package top.xtcoder.jdcbase.user.entity;

import org.nutz.dao.entity.annotation.ColDefine;
import org.nutz.dao.entity.annotation.ColType;
import org.nutz.dao.entity.annotation.Column;
import org.nutz.dao.entity.annotation.Comment;
import org.nutz.dao.entity.annotation.Index;
import org.nutz.dao.entity.annotation.Table;
import org.nutz.dao.entity.annotation.TableIndexes;

import com.alibaba.excel.annotation.ExcelProperty;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import top.xtcoder.jdcbase.base.entity.base.AccountInfo;

@Table("member_info")
@ApiModel("用户基本信息")
@Comment("用户基本信息表")
@TableIndexes({
        @Index(fields = {"account"}, unique = true),
        @Index(fields = {"phone"}, unique = true)
})
public class MemberInfo extends AccountInfo {

	@Column("account")
    @ColDefine(type = ColType.TEXT)
    @Comment(value = "账号")
    @ApiModelProperty(value = "账号")
    @ExcelProperty("账号")
    private String account;
	
	@Column("password")
    @ColDefine(type = ColType.TEXT)
    @Comment(value = "密码")
    @ApiModelProperty(value = "密码")
    @ExcelProperty("密码")
    private String password;
	
	@Column("salt")
    @ColDefine(type = ColType.TEXT)
    @Comment(value = "盐")
    @ApiModelProperty(value = "盐")
    @ExcelProperty("盐")
    private String salt;
	
    @Column("idcard")
    @ColDefine(type = ColType.VARCHAR, width = 20)
    @Comment(value = "身份证号")
    @ApiModelProperty(value = "身份证号")
    @ExcelProperty("身份证号")
    private String idcard;

    @Column("name")
    @ColDefine(type = ColType.VARCHAR, width = 50)
    @Comment(value = "姓名")
    @ApiModelProperty(value = "姓名")
    @ExcelProperty("姓名")
    private String name;

    @Column("sex")
    @ColDefine(type = ColType.INT, width = 1)
    @Comment(value = "性别:[1男   2女]")
    @ApiModelProperty(value = "性别:[1男   2女]")
    private int sex;

    @Column("nation")
    @ColDefine(type = ColType.VARCHAR, width = 50)
    @Comment(value = "民族")
    @ApiModelProperty(value = "民族")
    @ExcelProperty("民族")
    private String nation;

    @Column("birthday")
    @ColDefine(type = ColType.VARCHAR, width = 50)
    @Comment(value = "出生日期")
    @ApiModelProperty(value = "出生日期")
    @ExcelProperty("出生日期")
    private String birthday;

    @Column("inschool_day")
    @ColDefine(type = ColType.VARCHAR, width = 50)
    @Comment(value = "入学时间")
    @ApiModelProperty(value = "入学时间")
    @ExcelProperty("入学时间")
    private String inschoolDay;

    @Column("phone")
    @ColDefine(type = ColType.VARCHAR, width = 50)
    @Comment(value = "手机号")
    @ApiModelProperty(value = "手机号")
    @ExcelProperty("手机号")
    private String phone;

    @Column("family_addr")
    @ColDefine(type = ColType.TEXT)
    @Comment(value = "家庭地址")
    @ApiModelProperty(value = "家庭地址")
    @ExcelProperty("家庭地址")
    private String familyAddr;

    @Column("native_place")
    @ColDefine(type = ColType.VARCHAR, width = 100)
    @Comment(value = "籍贯")
    @ApiModelProperty(value = "籍贯")
    @ExcelProperty("籍贯")
    private String nativePlace;

    @Column("email")
    @ColDefine(type = ColType.TEXT)
    @Comment(value = "电子邮件")
    @ApiModelProperty(value = "电子邮件")
    @ExcelProperty("电子邮件")
    private String email;

    @Column("hobby")
    @ColDefine(type = ColType.TEXT)
    @Comment(value = "业余爱好")
    @ApiModelProperty(value = "业余爱好")
    @ExcelProperty("业余爱好")
    private String hobby;

    @Column("imageurl")
    @ColDefine(type = ColType.TEXT)
    @Comment(value = "头像")
    @ApiModelProperty(value = "头像")
    private String imageurl;

    @Column("education")
    @ColDefine(type = ColType.INT, width = 5)
    @Comment(value = "学历[1:专科，2本科,3专升本，4预科，5研究生]")
    @ApiModelProperty(value = "学历[1:专科，2本科,3专升本，4预科，5研究生]")
    private int education;

	public String getIdcard() {
		return idcard;
	}

	public void setIdcard(String idcard) {
		this.idcard = idcard;
	}

	public String getName() {
		return name;
	}

	public void setName(String name) {
		this.name = name;
	}

	public int getSex() {
		return sex;
	}

	public void setSex(int sex) {
		this.sex = sex;
	}

	public String getNation() {
		return nation;
	}

	public void setNation(String nation) {
		this.nation = nation;
	}

	public String getBirthday() {
		return birthday;
	}

	public void setBirthday(String birthday) {
		this.birthday = birthday;
	}

	public String getInschoolDay() {
		return inschoolDay;
	}

	public void setInschoolDay(String inschoolDay) {
		this.inschoolDay = inschoolDay;
	}

	public String getPhone() {
		return phone;
	}

	public void setPhone(String phone) {
		this.phone = phone;
	}

	public String getFamilyAddr() {
		return familyAddr;
	}

	public void setFamilyAddr(String familyAddr) {
		this.familyAddr = familyAddr;
	}

	public String getNativePlace() {
		return nativePlace;
	}

	public void setNativePlace(String nativePlace) {
		this.nativePlace = nativePlace;
	}

	public String getEmail() {
		return email;
	}

	public void setEmail(String email) {
		this.email = email;
	}

	public String getHobby() {
		return hobby;
	}

	public void setHobby(String hobby) {
		this.hobby = hobby;
	}

	public String getImageurl() {
		return imageurl;
	}

	public void setImageurl(String imageurl) {
		this.imageurl = imageurl;
	}

	public int getEducation() {
		return education;
	}

	public void setEducation(int education) {
		this.education = education;
	}

	public String getAccount() {
		return account;
	}

	public void setAccount(String account) {
		this.account = account;
	}

	public String getPassword() {
		return password;
	}

	public void setPassword(String password) {
		this.password = password;
	}

	public String getSalt() {
		return salt;
	}

	public void setSalt(String salt) {
		this.salt = salt;
	}
}